/**
 * 观察者模式
 *  定义了一种一对多的依赖关系，让多个观察者对象同时监听一个主题对象。
 *  这个主题对象在发生变化时，会通知所有观察者对象，使他们能够自动更新自己。
 * 角色 :
 * (1)抽象通知者
 * (2)抽象观察者
 * (3)具体通知者
 * (4)具体观察者
 * 什么时候使用？
 * （1）当一个对象的改变需要同时改变其他对象的时候，而且它不知道具体有多少对象有待改变。
 * （2）一个抽象模式有两个方面，其中一方面依赖于另一方面，这是观察者模式可以将这两个封装在独立的对象中使用它们各自独立的改变和复用。
 * 举例应用场景：
 * 某公司有前台，可以看到老板的出入。员工在老板出去的时候会看股本，看NBA等，当老板回来，前台通知到所有人老板回来了
 *
 *
 * @author 王蕾 [wanglei_dev@cyou-inc.com]
 * @date 2017-11-28 10:50:00
 */
package BehavioralModel.ObserverModel;